home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Demos / A.D. Software / OOFILE 1.3b4d6.sit / OOFILE 1.3b4d6 / MacCodeWarriorDemo1.3b4d6 / docs / samples / ooftst26.cpp < prev    next >
C/C++ Source or Header  |  1997-03-17  |  2KB  |  66 lines

  1. // Copyright 1994 A.D. Software. All Rights Reserved
  2.  
  3. // OOFTEST26
  4.  
  5. // This sample tests searching by related files.
  6.  
  7. // Simple stream I/O is used to interact with the user.
  8. #include "oofile.h"
  9.  
  10. #include "ooftst02.h"
  11.  
  12. // global variables that define the database using the ooftst02 classes
  13.  
  14.     TEST_CONNECT    theDB;
  15.     dbPatients     Patients;
  16.     dbVisits    Visits;
  17.     dbRelationship PatientVisits(Patients.Visits, Visits.Patient);
  18.     
  19. int main()
  20. {
  21.     cout << "OOFILE Validation Suite - Test 26\n"
  22.          << "Simple test of counting related data" << endl
  23.          << "and intersecting related data" << endl
  24.          << "as is often used in producing reports or graphs" << endl << endl;
  25.     
  26.     #ifdef TESTING_DBASE
  27.         #ifdef _Macintosh
  28.             const char* kExistsName =  ":ooftst02:Patients.dbf";
  29.             const char* kDatabaseName = ":ooftst02:";
  30.         #else
  31.             const char* kExistsName =   "Patients.dbf"
  32.             const char* kDatabaseName = "";
  33.         #endif    
  34.  
  35.     #else
  36.         const char* kDatabaseName = "ooftst02.db";
  37.         const char* kExistsName = kDatabaseName;
  38.     #endif
  39.     
  40.     if (dbConnect::fileExists(kExistsName)) {
  41.         theDB.openConnection(kDatabaseName);
  42.     }
  43.     else {
  44.         theDB.newConnection(kDatabaseName);
  45.         Patients.AddTestData();
  46.     }
  47.  
  48.     cout << theDB << endl;
  49.     
  50.     Patients.search(Patients.LastName == "Dent");
  51.     cout << "Number of 'Dent' Patients  = " << Patients.count() << endl;
  52.     
  53.     Visits.search(Visits.VisitDate < "1-11-1994");
  54.     cout << "Number of Visits prior 1-11-1994 = " << Visits.count() << endl;
  55.     
  56.     cout << "Number of Visits related to selected Patients = " 
  57.          << Patients.Visits.countAllRelated() << endl;
  58.  
  59.     cout << "Number of Visits related to selected Patients prior 1-11-1994 = " 
  60.          << Patients.Visits.countAllRelatedIn(Visits) << endl;
  61.  
  62.     cout << "Test Completed" << endl;
  63.     
  64.     return EXIT_SUCCESS;
  65. }       
  66.